// 将一个给定字符串 s 根据给定的行数 numRows ，以从上往下、从左到右进行 Z 字形排列。

// 比如输入字符串为 "PAYPALISHIRING" 行数为 3 时，排列如下：
/**
 * @param {string} s
 * @param {number} numRows
 * @return {string}
 */
var convert = function (s, numRows) {
    if (numRows === 1)
        return s
    let str = ''
    for (let j = 0; j < numRows; j++) {
        for (let i = j; i < s.length; i = i + 2 * numRows - 2) {
            str += s.charAt(i)
            if (i + 2 * numRows - 2 * (j + 1) < s.length && j !== 0 && j !== numRows - 1) {
                str += s.charAt(i + 2 * numRows - 2 * (j + 1))
            }
        }
    }
    return str;
};
console.log(convert('paysw', 2));
console.log(convert('A', 1));
console.log(convert('PAYPALISHIRING', 3) === 'PAHNAPLSIIGYIR');
console.log(convert('PAYPALISHIRING', 4) === 'PINALSIGYAHRPI');